The multimedia messaging service (MMS) as described, e.g., in the OMA Multimedia Messaging Service specification, Approved Version 1.2 May 2005, Open Mobile Alliance, OMA-ERP-MMS-V1—2-200504295-A.zip, which is available at the following URL http://www.openmobilealliance.org/Technical/release_program/mms_v1—2.aspx, provides methods for the peer-to-peer and server-to-client transmission of various types of data including text, audio, still images, and moving images, primarily over wireless networks.
While the MMS provides standard methods for encapsulating such data, the type of data may be coded in any of a large number of standard formats such as plain text, 3GP video and audio/speech, SP-MIDI for synthetic audio, JPEG still images (details on any one of those refer to Multimedia Messaging Service, Media formats and codecs, 3GPP TS 26.140, V7.1.0 (2007-06), available at the following URL http://www.3gpp.org/ftp/Specs/html-info/26140.htm). Still images are frequently coded in the JPEG format for which a software library has been written by “The independent jpeg group” and published at ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz.
FIG. 1 illustrates one example of a MMS system architecture 100, including an Originating Node 102, a Service Delivery Platform 104, a Destination Node 106, and an Adaptation Engine 108. The Originating Node 102 is able to communicate with the Service Delivery Platform 104 over a Network “A” 110. Similarly the Destination Node 106 is able to communicate with the Service Delivery Platform 104 over a Network “B” 112. The Networks “A” and “B” are merely examples, shown to illustrate a possible set of connectivities, and many other configurations are also possible. For example, the Originating and Destination Nodes (102 and 106) may be able to communicate with the Service Delivery Platform 104 over a single network; the Originating Node 102 may be directly connected to the Service Delivery Platform 104 without an intervening network, etc.
The Adaptation Engine 108 may be directly connected with the Service Delivery Platform 104 over a link 114 as shown in FIG. 1, or alternatively may be connected to it through a network, or may be embedded in the Service Delivery Platform 104.
In a trivial case, the Originating Node 102 may send a (multimedia) message that is destined for the Destination Node 106. The message is forwarded through the Network “A” 110 to the Service Delivery Platform 104 from which the message is sent to the Destination Node 106 via the Network “B” 112. The Originating and Destination Nodes (102 and 106) may for instance be wireless devices, the Networks “A” and “B” (110 and 112) may in this case be wireless networks, and the Service Delivery Platform 104 may provide the multimedia message forwarding service.
In another instance, the Originating Node 102 may be a server of a content provider, connected to the Service Delivery Platform 104 through a data network, i.e. the Network “A” 110 may be the internet, while the Network “B” 112 may be a wireless network serving the Destination Node 106 which may be a wireless device.
An overview of server-side adaptation for the Multimedia Messaging Service (MMS) is given in a paper “Multimedia Adaptation for the Multimedia Messaging Service” by Stephane Coulombe and Guido Grassel, IEEE Communications Magazine, vol. 42, no. 7, pp. 120-126, July 2004.
In the case of images in particular, the message sent by the Originating Node 102 may include an image, specifically a JPEG encoded image. The capabilities of the Destination Node 106 may not include the ability to display the image in its original form, for example because the height or width of the image in terms of the number of pixels, that is the resolution of the image, exceeds the size or resolution of the display device in the Destination Node 106. In order for the Destination Node 106 to receive and display it, the image may be modified in an Image Transcoder 116 in the Adaptation Engine 108 before being delivered to the Destination Node 106. The modification of the image by the Image Transcoder 116 typically may include scaling, i.e. change the image resolution, and compression.
Image compression is commonly done to reduce the file size of the image for reasons of storage or transmission economy, or to meet file size limits or bit rate limits imposed by network requirements. The receiving device in MMS also has a memory limitation leading to a file size limit. The JPEG standard provides a commonly used method for image compression. As is well known, JPEG compression is “lossy”, that is a compressed image may not contain 100% of the digital information contained in the original image. The loss of information can be controlled by setting a “Quality Factor” QF during the compression. A lower QF is equivalent to higher compression and generally leads to a smaller file size. Conversely, a higher QF leads to a larger file size, and generally higher perceived “quality” of the image.
Changing an image's resolution, or scaling, to meet a terminal's capabilities is a problem with well-known solutions. However, optimizing image quality against file size constraints remains a challenge, as there are no well-established relationships between the quality factor QF, perceived quality, and the compressed file size. Using scaling as an additional means of achieving file size reduction, rather than merely resolution adaptation, makes the problem all the more challenging.
The problem of file size reduction for visual content has been studied extensively. In “Accurate bit allocation and rate control for DCT domain video transcoding” by Zhijun Lei and N.D. Georganas, in IEEE CCECE 2002. Canadian Conference on Electrical and Computer Engineering, 2002, vol. 2, pp. 968-973, it is shown that bit rate reduction can be achieved through adaptation of quantization parameters, rather than through scaling. This makes sense in the context of low bit rate video, where resolution is often limited to a number of predefined formats. In “Efficient transform-domain size and resolution reduction of images” by Justin Ridge, in Signal Processing: Image Communication, vol. 18, no. 8, pp. 621-639, September 2003, a technique is described for scaling and then reducing the file size of JPEG images. But this technique does not consider estimating scaling and quality reduction in combination. A method of reducing the size of an existing JPEG file is described in the U.S. Pat. No. 6,233,359 entitled “File size bounded JPEG transcoder” May 2001, by Viresh Ratnakar and Victor Ivashin. However, while reducing the quality and bit rate of an image, this method does not include scaling of the image.
Methods to estimate the compressed file size of a JPEG image that is subject to simultaneous changes in scaling and in QF have been reported in a brief note by Steven Pigeon and Stephane Coulombe, entitled “Very Low Cost Algorithms for Predicting the File Size of JPEG Images Subject to Changes of Quality Factor and Scaling”, Data Compression Conference (DCC 2008), p. 538, 2008, and fully described in “Computationally efficient algorithms for predicting the file size of JPEG images subject to changes of quality factor and scaling” in Proceedings of the 24th Queen's Biennial Symposium on Communications, Queen's University, Kingston, Canada, 2008 (the “Kingston” paper), and in the PCT patent application to Steven Pigeon entitled “System and Method for Predicting the File Size of Images Subject to Transformation by Scaling and Change of Quality-Controlling Parameters” serial number PCT/CA2007/001974 filed Nov. 2, 2007, which is incorporated herein by reference.
In spite of recent advancement in the area of image transcoding, there remains a requirement for developing an improved transcoding method that takes scaling, compressed file size limitations, as well as image quality into account.